"""
我们会用type()来查看一个对象的类型，这是我们最常见的用法；
但是type还有一种完全不同的能力，它也能动态的创建类。
type可以接受一个类的描述作为参数，然后返回一个类。

1、type可以创建类（任意的类）

2、type创建的对象拥有创建对象的能力（也就是类）

3、type就是Python中所有类的元类（metaclass)
"""
class User:
    pass

# 使用type来创建一个类
# 创建一个名为 Person 的类，没有基类，有一个 name 属性。
Person = type('Person', (), {'name': 'zhangsan'})
# Person = type('Person', (User,), {'name': 'zhangsan'})


print(Person)

p = Person()

print(p.name)
